﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CoyoEden.Models;

namespace CoyoEden.Services
{
    public interface IPostService
    {
        /// <summary>
        /// Retrieves a Post from the provider based on the specified id.
        /// </summary>
        Post SelectPost(int id);
        ///// <summary>
        ///// Retrieves the content of the post in order to lazy load.
        ///// </summary>
        //public abstract string SelectPostContent(Guid id);
        /// <summary>
        /// Inserts a new Post into the data store specified by the provider.
        /// </summary>
        void InsertPost(Post post);
        /// <summary>
        /// Updates an existing Post in the data store specified by the provider.
        /// </summary>
        void UpdatePost(Post post);
        /// <summary>
        /// Deletes a Post from the data store specified by the provider.
        /// </summary>
        void DeletePost(Post post);
        /// <summary>
        /// Retrieves all Posts from the provider and returns them in a List.
        /// </summary>
        List<Post> FillPosts();
    }
}
